home *** CD-ROM | disk | FTP | other *** search
/ mail.altrad.com / 2015.02.mail.altrad.com.tar / mail.altrad.com / TEST / office german / PROPLUS.WW / PROPLSWW.CAB / FL_xmlsig_xsd_91898________.3643236F_FC70_11D3_A536_0090278A1BB8 < prev    next >
Extensible Markup Language  |  2006-10-26  |  10KB  |  310 lines

  1. <?xml version="1.0" encoding="utf-8"?>
  2.  
  3. <!-- Schema for XML Signatures
  4.     http://www.w3.org/2000/09/xmldsig#
  5.     $Revision: 1.1 $ on $Date: 2002/02/08 20:32:26 $ by $Author: reagle $
  6.  
  7.     Copyright 2001 The Internet Society and W3C (Massachusetts Institute
  8.     of Technology, Institut National de Recherche en Informatique et en
  9.     Automatique, Keio University). All Rights Reserved.
  10.     http://www.w3.org/Consortium/Legal/
  11.  
  12.     This document is governed by the W3C Software License [1] as described
  13.     in the FAQ [2].
  14.  
  15.     [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
  16.     [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
  17. -->
  18.  
  19.  
  20. <schema xmlns="http://www.w3.org/2001/XMLSchema"
  21.         xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
  22.         targetNamespace="http://www.w3.org/2000/09/xmldsig#"
  23.         version="0.1" elementFormDefault="qualified"> 
  24.  
  25. <!-- Basic Types Defined for Signatures -->
  26.  
  27. <simpleType name="CryptoBinary">
  28.   <restriction base="base64Binary">
  29.   </restriction>
  30. </simpleType>
  31.  
  32. <!-- Start Signature -->
  33.  
  34. <element name="Signature" type="ds:SignatureType"/>
  35. <complexType name="SignatureType">
  36.   <sequence> 
  37.     <element ref="ds:SignedInfo"/> 
  38.     <element ref="ds:SignatureValue"/> 
  39.     <element ref="ds:KeyInfo" minOccurs="0"/> 
  40.     <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/> 
  41.   </sequence>  
  42.   <attribute name="Id" type="ID" use="optional"/>
  43. </complexType>
  44.  
  45.   <element name="SignatureValue" type="ds:SignatureValueType"/> 
  46.   <complexType name="SignatureValueType">
  47.     <simpleContent>
  48.       <extension base="base64Binary">
  49.         <attribute name="Id" type="ID" use="optional"/>
  50.       </extension>
  51.     </simpleContent>
  52.   </complexType>
  53.  
  54. <!-- Start SignedInfo -->
  55.  
  56. <element name="SignedInfo" type="ds:SignedInfoType"/>
  57. <complexType name="SignedInfoType">
  58.   <sequence> 
  59.     <element ref="ds:CanonicalizationMethod"/> 
  60.     <element ref="ds:SignatureMethod"/> 
  61.     <element ref="ds:Reference" maxOccurs="unbounded"/> 
  62.   </sequence>  
  63.   <attribute name="Id" type="ID" use="optional"/> 
  64. </complexType>
  65.  
  66.   <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/> 
  67.   <complexType name="CanonicalizationMethodType" mixed="true">
  68.     <sequence>
  69.       <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
  70.       <!-- (0,unbounded) elements from (1,1) namespace -->
  71.     </sequence>
  72.     <attribute name="Algorithm" type="anyURI" use="required"/> 
  73.   </complexType>
  74.  
  75.   <element name="SignatureMethod" type="ds:SignatureMethodType"/>
  76.   <complexType name="SignatureMethodType" mixed="true">
  77.     <sequence>
  78.       <element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
  79.       <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
  80.       <!-- (0,unbounded) elements from (1,1) external namespace -->
  81.     </sequence>
  82.     <attribute name="Algorithm" type="anyURI" use="required"/> 
  83.   </complexType>
  84.  
  85. <!-- Start Reference -->
  86.  
  87. <element name="Reference" type="ds:ReferenceType"/>
  88. <complexType name="ReferenceType">
  89.   <sequence> 
  90.     <element ref="ds:Transforms" minOccurs="0"/> 
  91.     <element ref="ds:DigestMethod"/> 
  92.     <element ref="ds:DigestValue"/> 
  93.   </sequence>
  94.   <attribute name="Id" type="ID" use="optional"/> 
  95.   <attribute name="URI" type="anyURI" use="optional"/> 
  96.   <attribute name="Type" type="anyURI" use="optional"/> 
  97. </complexType>
  98.  
  99.   <element name="Transforms" type="ds:TransformsType"/>
  100.   <complexType name="TransformsType">
  101.     <sequence>
  102.       <element ref="ds:Transform" maxOccurs="unbounded"/>  
  103.     </sequence>
  104.   </complexType>
  105.  
  106.   <element name="Transform" type="ds:TransformType"/>
  107.   <complexType name="TransformType" mixed="true">
  108.     <choice minOccurs="0" maxOccurs="unbounded"> 
  109.       <any namespace="##other" processContents="lax"/>
  110.       <!-- (1,1) elements from (0,unbounded) namespaces -->
  111.       <element name="XPath" type="string"/> 
  112.     </choice>
  113.     <attribute name="Algorithm" type="anyURI" use="required"/> 
  114.   </complexType>
  115.  
  116. <!-- End Reference -->
  117.  
  118. <element name="DigestMethod" type="ds:DigestMethodType"/>
  119. <complexType name="DigestMethodType" mixed="true"> 
  120.   <sequence>
  121.     <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
  122.   </sequence>    
  123.   <attribute name="Algorithm" type="anyURI" use="required"/> 
  124. </complexType>
  125.  
  126. <element name="DigestValue" type="ds:DigestValueType"/>
  127. <simpleType name="DigestValueType">
  128.   <restriction base="base64Binary"/>
  129. </simpleType>
  130.  
  131. <!-- End SignedInfo -->
  132.  
  133. <!-- Start KeyInfo -->
  134.  
  135. <element name="KeyInfo" type="ds:KeyInfoType"/> 
  136. <complexType name="KeyInfoType" mixed="true">
  137.   <choice maxOccurs="unbounded">     
  138.     <element ref="ds:KeyName"/> 
  139.     <element ref="ds:KeyValue"/> 
  140.     <element ref="ds:RetrievalMethod"/> 
  141.     <element ref="ds:X509Data"/> 
  142.     <element ref="ds:PGPData"/> 
  143.     <element ref="ds:SPKIData"/>
  144.     <element ref="ds:MgmtData"/>
  145.     <any processContents="lax" namespace="##other"/>
  146.     <!-- (1,1) elements from (0,unbounded) namespaces -->
  147.   </choice>
  148.   <attribute name="Id" type="ID" use="optional"/> 
  149. </complexType>
  150.  
  151.   <element name="KeyName" type="string"/>
  152.   <element name="MgmtData" type="string"/>
  153.  
  154.   <element name="KeyValue" type="ds:KeyValueType"/> 
  155.   <complexType name="KeyValueType" mixed="true">
  156.    <choice>
  157.      <element ref="ds:DSAKeyValue"/>
  158.      <element ref="ds:RSAKeyValue"/>
  159.      <any namespace="##other" processContents="lax"/>
  160.    </choice>
  161.   </complexType>
  162.  
  163.   <element name="RetrievalMethod" type="ds:RetrievalMethodType"/> 
  164.   <complexType name="RetrievalMethodType">
  165.     <sequence>
  166.       <element ref="ds:Transforms" minOccurs="0"/> 
  167.     </sequence>  
  168.     <attribute name="URI" type="anyURI"/>
  169.     <attribute name="Type" type="anyURI" use="optional"/>
  170.   </complexType>
  171.  
  172. <!-- Start X509Data -->
  173.  
  174. <element name="X509Data" type="ds:X509DataType"/> 
  175. <complexType name="X509DataType">
  176.   <sequence maxOccurs="unbounded">
  177.     <choice>
  178.       <element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
  179.       <element name="X509SKI" type="base64Binary"/>
  180.       <element name="X509SubjectName" type="string"/>
  181.       <element name="X509Certificate" type="base64Binary"/>
  182.       <element name="X509CRL" type="base64Binary"/>
  183.       <any namespace="##other" processContents="lax"/>
  184.     </choice>
  185.   </sequence>
  186. </complexType>
  187.  
  188. <complexType name="X509IssuerSerialType"> 
  189.   <sequence> 
  190.     <element name="X509IssuerName" type="string"/> 
  191.     <element name="X509SerialNumber" type="integer"/> 
  192.   </sequence>
  193. </complexType>
  194.  
  195. <!-- End X509Data -->
  196.  
  197. <!-- Begin PGPData -->
  198.  
  199. <element name="PGPData" type="ds:PGPDataType"/> 
  200. <complexType name="PGPDataType"> 
  201.   <choice>
  202.     <sequence>
  203.       <element name="PGPKeyID" type="base64Binary"/> 
  204.       <element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/> 
  205.       <any namespace="##other" processContents="lax" minOccurs="0"
  206.        maxOccurs="unbounded"/>
  207.     </sequence>
  208.     <sequence>
  209.       <element name="PGPKeyPacket" type="base64Binary"/> 
  210.       <any namespace="##other" processContents="lax" minOccurs="0"
  211.        maxOccurs="unbounded"/>
  212.     </sequence>
  213.   </choice>
  214. </complexType>
  215.  
  216. <!-- End PGPData -->
  217.  
  218. <!-- Begin SPKIData -->
  219.  
  220. <element name="SPKIData" type="ds:SPKIDataType"/> 
  221. <complexType name="SPKIDataType">
  222.   <sequence maxOccurs="unbounded">
  223.     <element name="SPKISexp" type="base64Binary"/>
  224.     <any namespace="##other" processContents="lax" minOccurs="0"/>
  225.   </sequence>
  226. </complexType> 
  227.  
  228. <!-- End SPKIData -->
  229.  
  230. <!-- End KeyInfo -->
  231.  
  232. <!-- Start Object (Manifest, SignatureProperty) -->
  233.  
  234. <element name="Object" type="ds:ObjectType"/> 
  235. <complexType name="ObjectType" mixed="true">
  236.   <sequence minOccurs="0" maxOccurs="unbounded">
  237.     <any namespace="##any" processContents="lax"/>
  238.   </sequence>
  239.   <attribute name="Id" type="ID" use="optional"/> 
  240.   <attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet -->
  241.   <attribute name="Encoding" type="anyURI" use="optional"/> 
  242. </complexType>
  243.  
  244. <element name="Manifest" type="ds:ManifestType"/> 
  245. <complexType name="ManifestType">
  246.   <sequence>
  247.     <element ref="ds:Reference" maxOccurs="unbounded"/> 
  248.   </sequence>
  249.   <attribute name="Id" type="ID" use="optional"/> 
  250. </complexType>
  251.  
  252. <element name="SignatureProperties" type="ds:SignaturePropertiesType"/> 
  253. <complexType name="SignaturePropertiesType">
  254.   <sequence>
  255.     <element ref="ds:SignatureProperty" maxOccurs="unbounded"/> 
  256.   </sequence>
  257.   <attribute name="Id" type="ID" use="optional"/> 
  258. </complexType>
  259.  
  260.    <element name="SignatureProperty" type="ds:SignaturePropertyType"/> 
  261.    <complexType name="SignaturePropertyType" mixed="true">
  262.      <choice maxOccurs="unbounded">
  263.        <any namespace="##other" processContents="lax"/>
  264.        <!-- (1,1) elements from (1,unbounded) namespaces -->
  265.      </choice>
  266.      <attribute name="Target" type="anyURI" use="required"/> 
  267.      <attribute name="Id" type="ID" use="optional"/> 
  268.    </complexType>
  269.  
  270. <!-- End Object (Manifest, SignatureProperty) -->
  271.  
  272. <!-- Start Algorithm Parameters -->
  273.  
  274. <simpleType name="HMACOutputLengthType">
  275.   <restriction base="integer"/>
  276. </simpleType>
  277.  
  278. <!-- Start KeyValue Element-types -->
  279.  
  280. <element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
  281. <complexType name="DSAKeyValueType">
  282.   <sequence>
  283.     <sequence minOccurs="0">
  284.       <element name="P" type="ds:CryptoBinary"/>
  285.       <element name="Q" type="ds:CryptoBinary"/>
  286.     </sequence>
  287.     <element name="G" type="ds:CryptoBinary" minOccurs="0"/>
  288.     <element name="Y" type="ds:CryptoBinary"/>
  289.     <element name="J" type="ds:CryptoBinary" minOccurs="0"/>
  290.     <sequence minOccurs="0">
  291.       <element name="Seed" type="ds:CryptoBinary"/>
  292.       <element name="PgenCounter" type="ds:CryptoBinary"/>
  293.     </sequence>
  294.   </sequence>
  295. </complexType>
  296.  
  297. <element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
  298. <complexType name="RSAKeyValueType">
  299.   <sequence>
  300.     <element name="Modulus" type="ds:CryptoBinary"/> 
  301.     <element name="Exponent" type="ds:CryptoBinary"/> 
  302.   </sequence>
  303. </complexType> 
  304.  
  305. <!-- End KeyValue Element-types -->
  306.  
  307. <!-- End Signature -->
  308.  
  309. </schema>
  310.